package com.wiscamp.ninechapters.problems.application.dto.commands.types;

import com.wiscamp.ninechapters.ddd.CommandObject;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 题类型
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class UpdateProblemTypeCommand extends CommandObject {
    /**
     * 题型编号
     */
    private long typeId = 0;

    /**
     * 学科编号
     */
    private long subjectId = 0;

    /**
     * 题型代码
     */
    private String typeCode = "";

    /**
     * 题型名称
     */
    private String typeName = "";

    /**
     * 题型说明
     */
    private String typeDescription = "";

    /**
     * 是否有题干部分
     */
    private boolean hasStem = false;

    /**
     * 题干类型
     * 参考 panels.data_dictionary: STEM_TYPE
     */
    private int stemTypeId = 0;

    /**
     * 题模式
     */
    private int problemModeId = 0;

    /**
     * 通用问题模式
     */
    private int commonQuestionModeId;

    /**
     * 备注
     */
    private String remark = "";

    /**
     * 是否可用
     */
    private boolean enabled = true;
}
